A storage system generally provides a logical volume, which has been created based on a RAID (Redundant Array of Independent Disks) group comprising multiple storage media, to a higher-level apparatus (for example, a host computer). In recent years, a flash storage, which uses a NAND flash memory, has been employed either in addition to or instead of a HDD (Hard Disk Drive) as the storage medium. The NAND flash memory is a nonvolatile semiconductor memory, and a read is performed in a unit called a page. Similarly, a write is also performed in units of pages, but at the time of a write, a target area must be erased beforehand. An erase is performed in a unit called a block, which comprises multiple pages.
The following control is effective for performing high-speed I/O processes (read/write processes) under such restrictions. First, the association of a logical address recognized by the higher-level apparatus and a physical address on the flash memory is managed. An erased area is created asynchronously to the I/O process from the higher-level apparatus.
Write-target data from the higher-level apparatus is stored in the erased area that was prepared beforehand. When performing this control, an update data storage area for use as a buffer is necessary. The “update data storage area” referred to here is a free storage area (for example, a page in which valid data (the latest data with respect to the logical address) is not stored in an erased block) specified by a physical address that is not allocated to any logical address.
Patent Literature 1 discloses a method for using an area identified inside a block as the update data storage area.